Improving Software Development Project Team Performance: A Web-based Expert Support System for Project Control
نویسندگان
چکیده
Delivered software is often late and over budget, while offering fewer features than requested by the user. Many software developers have difficulties establishing and adhering to a project plan and in delivering what the user wants within the budget and schedule. Developers also have difficulty in obtaining user involvement in the development process. This paper discusses a Webenabled expert system, Project Management Advisor (PMA), which will provide alerts and corrective actions for some of the common problems that plague software development projects. PMA was developed as a part of a CyberCollaboratory built to facilitate collaborative project work. The development and evaluation of a collaborative generic expert system for identification and analysis of anomalies in project plan data is expected to be useful to many software development teams and managers in a wide variety of organizations. PMA is a field prototype and was evaluated using 11 real world project plans. The preliminary analysis of the findings is presented and discussed. 1.0. Introduction So far as the laws of mathematics refer to reality, they are not certain. And so far as they are certain they do not refer to reality. Albert Einstein For software development projects Einstein's words were prophetic. Project managers use mathematical tools to help manage projects but these tools are unable to deal with the uncertainty of incomplete or changing user requirements, lack of user involvement, and inexperienced project managers. One of the largest problems facing management today is the management of software development. It is estimated that over 1/3 of all software development projects, upwards of 80 billion dollars each year, are abandoned before completion. This problem spans corporate and national boundaries. Only 0-7695-0001-3/99 $1 18% of completed software projects are within budget or on time [21] [10] [22] [16]. Some of the root causes are: incomplete and/or creeping user requirements, lack of user involvement, and inexperienced or poorly trained project managers [2] [10]. Other causes are system's scopes that are too large or too visionary, and incomplete testing [14]. These factors all increase the risk associated with a software development project and the probability of failure. For a project to succeed a well-defined project plan is essential [5] [16] [1]. However, user involvement coupled with well-defined requirements and small deliverable milestones are also necessary. Today's stand-alone project management tools do not address the root causes mentioned above. Project management systems such as these focus on schedule variance using historical data as the basis for analysis [1]. Traditional project management tools are based on a rational model of decision making, are quantitative, and work relatively well for structured and semi-structured decisionmaking [9]. They do not perform the less structured decision analyses such as whether enough testing has been conducted or whether user involvement is adequate. Neither are these systems designed to issue alerts to potential problems, provide assistance in the analysis of project plans based on heuristics or expert judgement, or assess risk [10] [2]. These are some of the gray areas we hope to address with our expert system, PMA. The next section presents the theoretical framework for PMA. Section 3 describes the architecture of PMA. Section 4 discusses the methodology employed for the knowledge engineering process. Section 5 presents the expected advantages of PMA. Section 6 demonstrates the PMA system, section 7 presents preliminary field study findings, and section 8 discusses conclusions and future directions. 2.0. Theoretical Framework Figure 1 shows our conceptual framework for a webenabled generic expert support system. This framework was developed by incorporating three conceptual models: 0.00 (c) 1999 IEEE 1 Proceedings of the 32nd Hawaii International Conference on System Sciences 1999 Proceedings of the 32nd Hawaii International Conference on System Sciences 1999 a Generic Expert System [13], an Expert Support System [9], and an Asynchronous CyberCollaboratory [7]. PMA is flexible, robust, and easy to use. It is designed to address all three of the dimensions in the conceptual framework except unstructured or strategic type decisions as shown in Figure 1 (solid black area). Traditional project management systems are domain specific and address only well-structured problems as shown in Figure 1 (striped area). Figure 1. Conceptual Framework for Web-enabled Generic ESS The commercial project management tools in use today have several major deficiencies. They are based on the deterministic optimization techniques and do not issue warnings regarding possible future schedule slippage, analyze the causes of delays, or provide recommendations for remedial action. Some planning systems have incorporated historical data from completed projects to use as the basis for planning [8]. However, these methods still lack the predictive value of an expert system, which has the thinking processes of an expert project manager, embedded within its knowledge base. Nor do these traditional systems facilitate team collaboration or user involvement. PMA is a major extension of the traditional model as shown in Figure 2. PMA is Web-enabled, generic, intelligent, and embedded within a CyberCollaboratory [7]. Traditional project control systems are based on a rational decision process using either deterministic optimization or stochastic methods such as Gantt charts, PERT, CPM, GERT, and VERT [11] [15]. PMA is based on an inferential model using both human expert judgement and the database from a traditional tool to create new knowledge [9]. The underlying processes consist of building a project plan using MS-Project, and then analyzing the plan using PMA, which posts alerts and recommendations for remedial actions to the web for viewing and consideration by the project team. (D om ai n) Sp ec ifi c / G en er ic Stand-alone Synchronous Web-enabled Asynchronous (Access/Time) Unstructured
منابع مشابه
A Model-Driven Decision Support System for Software Cost Estimation (Case Study: Projects in NASA60 Dataset)
Estimating the costs of software development is one of the most important activities in software project management. Inaccuracies in such estimates may cause irreparable loss. A low estimate of the cost of projects will result in failure on delivery on time and indicates the inefficiency of the software development team. On the other hand, high estimates of resources and costs for a project wil...
متن کاملDeveloping a Risk Management Model for Banking Software Development Projects Based on Fuzzy Inference System
Risk management is one of the most influential parts of project management that has a major impact on the success or failure of projects. Due to the increasing use of information technology (IT) systems in all fields and the high failure rate of IT projects in software development and production, it is essential to effectively manage these projects is essential. Therefore, this study is aimed t...
متن کاملRisk Analysis in E-commerce via Fuzzy Logic
This paper describes the development of a fuzzy decision support system (FDSS) for the assessment of risk in E-commerce (EC) development. A Web-based prototype FDSS is suggested to assist EC project managers in identifying potential EC risk factors and the corresponding project risks. A risk analysis model for EC development using a fuzzy set approach is proposed and incorporated into the FDSS....
متن کاملA Tool for Supporting Feature-Driven Development
This paper deals with the Featured Driven Development (FDD), an agile software development method. According to the requirement analysis for the FDD method application, an information system has been created providing all team members with instruments to follow the method. This tool has been implemented as a multi-user web-based application enabling creation of feature lists, planning a project...
متن کاملMerging Project Planning and Web-Enabled Dynamic Workflow Technologies
between project entities. O ne strategy for reducing time-to-market in software development is to deploy globally dispersed teams in concurrent work. This distributed development process requires flexible coordination and control to channel the work into a single, consistent system release. Several technologies have been developed to support distributed development. With project planning techno...
متن کامل